home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / mambo_xss3.nasl < prev    next >
Text File  |  2005-03-31  |  2KB  |  55 lines

  1. #
  2. #  This script was written by David Maciejak <david dot maciejak at kyxar dot fr>
  3. #  Released under the GNU GPL v2
  4. #  Ref: JeiAr   - GulfTech Security Research Team
  5. #
  6.  
  7. if (description)
  8. {
  9.  script_id(16316);
  10.  script_bugtraq_id(9890);
  11.  if ( defined_func("script_xref") ) script_xref(name:"OSVDB", value:"4665");
  12.  script_version ("$Revision: 1.1 $");
  13.  
  14.  script_name(english:"Mambo Site Server index.php mos_change_template XSS");
  15.  desc["english"] = "
  16. Mambo Site Server is an open source Web Content Management System. An attacker 
  17. may use it to perform a cross site scripting attack on this host.
  18.  
  19. Solution: Upgrade at least to version 4.5 1.0.4
  20. Risk factor : Medium";
  21.  
  22.  script_description(english:desc["english"]);
  23.  script_summary(english:"Determine if Mambo Site Server is vulnerable to xss attack");
  24.  script_category(ACT_GATHER_INFO);
  25.  script_family(english:"CGI abuses : XSS");
  26.  script_copyright(english:"This script is Copyright (C) 2005 David Maciejak");
  27.  script_dependencie("find_service.nes", "http_version.nasl", "cross_site_scripting.nasl");
  28.  script_require_ports("Services/www", 80);
  29.  exit(0);
  30. }
  31.  
  32. include("http_func.inc");
  33. include("http_keepalive.inc");
  34.  
  35. port = get_http_port(default:80);
  36.  
  37. if(!get_port_state(port))exit(0);
  38. if(get_kb_item(string("www/", port, "/generic_xss"))) exit(0);
  39. if(!can_host_php(port:port)) exit(0);
  40.  
  41.  
  42. foreach d (make_list(cgi_dirs(),  "/mambo"))
  43. {
  44.  url = string(d, "/index.php?mos_change_template=<script>foo</script>");
  45.  req = http_get(item:url, port:port);
  46.  buf = http_keepalive_send_recv(port:port, data:req, bodyonly:1);
  47.  if( buf == NULL ) exit(0);
  48.  
  49.  if ( '<form action="/index.php?mos_change_template=<script>foo</script>' >< buf )
  50.    {
  51.     security_warning(port);
  52.     exit(0);
  53.    }
  54. }
  55.